﻿using System;
using System.Linq;
using System.Net;
using System.Diagnostics;
using System.Runtime.Serialization;

namespace RoboCoder.GameState
{

    [DataContract]
    public class LevelInfo
    {
        const int MAX_SUBS = 5;

        [DataMember]
        public int Id { get; set; }

        [DataMember]
        public string Title { get; set; }

        [DataMember]
        public string About { get; set; }

        [DataMember]
        public int[] SubLengths { get; set; }

        [DataMember]
        public string[] Colors { get; set; }

        [DataMember]
        public string[] Items { get; set; }

        [DataMember]
        public int RobotRow { get; set; }

        [DataMember]
        public int RobotCol { get; set; }

        [DataMember]
        public int RobotDir { get; set; }

        [DataMember]
        public int Solutions { get; set; }

        [DataMember]
        public int DifficultyVoteSum { get; set; }

        [DataMember]
        public int DifficultyVoteCount { get; set; }

        [DataMember]
        public int Liked { get; set; }

        [DataMember]
        public int Disliked { get; set; }

        [DataMember]
        public string SubmittedBy { get; set; }

        [DataMember]
        public DateTime SubmittedDate { get; set; }

        [DataMember]
        public bool Featured { get; set; }

        [DataMember]
        public int AllowedCommands { get; set; }
    }
}
